// 这是一个标准的讲字符串写入文件的应用，待创建的文件名有argv[1]给出
// 实例输出创建文件描述符fd和写入文件的字符串长度

#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
#include <unistd.h>
#include <string.h>

int main(int argc, char *argv[]){
	
	int fd;		//文件描述符
	int temp;	//临时变量，用来记录返回值
        char writebuf[] = "HEELLOOO!!! This is a test\n";	//存放待写入的数据
	
	if(argc != 2){
		//如果没有输入文件名，则进行提出
		printf("Please input the correct file name as 'exam304WriteFun' filename\n");
	}else{
		// 打开文件
		fd = open(*(argv+1), O_RDWR | O_CREAT, S_IRWXU);
	}
	
	// 打印文件描述符
	printf("The file Descriptor is %d\n", fd);

	// 将数据写入文件,其中write的返回值为写入数据的大小	
	
	temp = write(fd, writebuf, 28); // sizeof(writebuf)/sizeof(writebuf[0]));
	
	printf("The input length is %d\n", temp);
		
	close(fd);
	
	printf("The siezeof writebuf = %ld\n", sizeof(writebuf)/sizeof(writebuf[0]));

	return 0;
}
